(c) 1999 Microsoft Corporation. All rights reserved.
This document provides late-breaking or other information that supplements the Microsoft ADO documentation.
--------
CONTENTS
--------
1. PRODUCT DESCRIPTION
2. NEW FEATURES
2.1 New ADO 2.5 Objects and support for OLE DB 2.5 interfaces
2.2 Enhanced support for Recordset persistence in XML
2.3 Support for URL binding
2.4 Improved integration of ADO with ASP
2.5 New URL property on the RDS DataControl object
2.6 Client impersonation support in RDS
3. TECHNICAL NOTES
4. KNOWN BUGS, LIMITATIONS, AND WORKAROUNDS
----------------------
1. PRODUCT DESCRIPTION
----------------------
ActiveX Data Objects (ADO) is an Automation-based interface for accessing data. ADO uses the OLE DB interface to access a broad range of data sources, including but not limited to data provided via ODBC.
Microsoft Remote Data Service (RDS) is a component of ADO that provides fast and efficient data connectivity and the data publishing framework for applications hosted in Microsoft Internet Explorer. It is based on a client/server, distributed technology that works over HTTP, HTTPS (HTTP over Secure Sockets layer), and DCOM application protocols. Using data-aware ActiveX controls, RDS provides data access programming in the style of Microsoft Visual Basic(R) to Web developers who need to build distributed, data-intensive applications for use over corporate intranets and the Internet.
---------------
2. NEW FEATURES
---------------
ADO 2.5 adds several new features for developers.
2.1 ADO 2.5 objects and support for OLE DB 2.5 interfaces
ADO 2.5 builds support for OLEDB 2.5 providers by adding two new objects to the traditional ADO object model: the record and the stream. ADO 2.5 is a set of extensions that extend ADO to work well with non-relational data sources and to provide better functionality for handling individual records in a recordset.
The following are the main features of ADO 2.5 extensions:
1. Allows records in a recordset to be accessed and manipulated individually.
2. Extends ADO to work with tree-structured and hierarchical data sources such as e-mail or file system.
3. Allows ADO objects to be addressed by URL strings that point directly to a node in a tree structure or a database object (table, view) in an RDBMS-style catalog.
4. Extends ADO so that it can be used to read and manipulate binary streams in fields and nodes of a tree-structured name space.
5. Provides the ability to do scoped operations on hierarchically organized data, such as copying a directory to another location.
The Record object can represent the following:
1. An existing record in an already open ADO recordset object.
2. A node in a tree-structured namespace, such as a file system or e-mail folder, a structured document, a simple document or text file, or a Visio drawing object.
Records can exist independently of a recordset or they can represent a record in a recordset.
The Stream object can be used to manipulate binary and textual data. It can be obtained from a simple document or from a record object representing a structured document or a folder. A stream object can also be directly opened by passing in a URL that uniquely identifies a document.
2.2 Enhanced support for Recordset persistence in XML
ADO 2.5 extends support for Recordset persistence. Now, hierarchical recordsets can also be persisted (saved) into and opened (loaded) from XML format. Hierarchical recordsets can be saved into XML format if they do not contain any pending updates. Recordsets can also be saved into and opened from the new ADO 2.5 Stream object, in addition to flat files.
2.3 Support for URL binding
ADO 2.5 supports URL binding. If you have an OLE DB 2.5 provider, you can open a record object as follows:
It is now possible to generate a recordset stream (in XML or binary ADTG format) directly from an ASP page. This provides a very easy way to generate XML streams from OLE DB data sources at the server. For example, you can save a recordset directly into the Response object. This allows you to send the recordset directly to the Response object's output stream. For example:
<% rs.Save Response, adPersistXML %>
2.5 New URL property on the RDS DataControl object
A new property, called the URL property, has been defined for the RDS DataControl object. This property can directly identify the source of a recordset to be bound to the RDS DataControl object. This property can be used in place of the existing "Server", "Connect", and "SQL" properties on the DataControl object. The URL property may point to a file or a stream object that contains a persisted recorsdset. It may also point to an ASP page that dynamically generates and persists a recordset into its output stream.
2.6 Client impersonation support in RDS
Client impersonation in RDS is now supported on Windows 2000 and Windows NT 4.0 servers. When running non-anonymous authentication on these servers, it is now possible to impersonate the client credentials via RDS.
------------------
3. TECHNICAL NOTES
------------------
There are no technical notes at this time.
-------------------------------------------
4. KNOWN BUGS, LIMITATIONS, AND WORKAROUNDS
-------------------------------------------
4.1 The Client Cursor Engine does not implement the OLE DB 2.5 interfaces. As a result, if you open a recordset on a version 2.5 OLE DB provider and specify adUseClient as the CursorLocation, certain properties such as RecordCount will not be available and will always return -1.
4.2 When using the OLE DB Shape provider or the OLE DB Remoting provider, the "Extended Properties" property value is available even when Persist Sensitive Authinfo is false. Users should be aware that the Extended Properties property is not secure and should avoid putting sensitive information into extended properties. When using the Shape provider via service components (as ADO does), the extened properties can be set in two ways:
1. The user can explicitly set the "extended properties."
2. If any properties specified in the connection string are not not supported by the Shape provider, the service components will put them into "Extended Properties".
Note: The PWD property of the Microsoft OLE DB Provider for ODBC is a provider-specific property that is not supported by the Shape provider or the Remoting provider. This means that sevice components will put the PWD property into the Extended Properties property and it will not be secure. Users are encouraged to use "PASSWORD=" instead of "PWD=" in the connection string.
4.3 When using a URL to open a record, you must use forward slashes rather than back slashes. For example, the following code will work correctly:
4.4 You can not open a Recordset asynchronously when opening it from a Stream object. You can save a Recordset into a Stream. You can also open a Recordset on a Stream, that is, you can use a Stream object as the first parameter to the Recordset.Open method. If you specify adAsyncFetchNonBlocking as an option, the Open method will not operate asynchronously but rather will block until the operation completes.